<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.hcm-agreement.org" targetNamespace="http://www.hcm-agreement.org" elementFormDefault="qualified" version="1.00">
    <!-- Defined Types -->
	<xs:simpleType name="countryType">
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="3"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="schemaVersion">
		<xs:restriction base="xs:decimal">
			<xs:totalDigits value="4"/>
			<xs:fractionDigits value="2"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="personType">
		<xs:sequence>
			<xs:element name="Name">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="20"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="Phone">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="20"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="Telefax">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="20"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="EMail">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="40"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="frequencyType">
		<xs:sequence>
			<xs:element name="Frequency">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
                        <xs:totalDigits value="10"/>
						<xs:fractionDigits value="5"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="Unit">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="k"/>
						<xs:enumeration value="M"/>
						<xs:enumeration value="G"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="coordinatesType">
		<xs:sequence>
			<xs:element name="Longitude">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="((0[0-9][0-9])|(1[0-7][0-9]))(E|W)[0-5][0-9][0-5][0-9]"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="Latitude">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="[0-8][0-9](N|S)([0-5][0-9][0-5][0-9])"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="antennaType">
		<xs:sequence>
			<xs:element name="Horizontal">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="[0-9]{3}[A-Z]{2}[0-9]{2}"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="Vertical">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="[0-9]{3}[A-Z]{2}[0-9]{2}"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="referenceType">
		<xs:sequence>
			<xs:element name="Country" type="countryType"/>
			<xs:element name="Year">
				<xs:simpleType>
					<xs:restriction base="xs:nonNegativeInteger">
						<xs:minInclusive value="0"/>
						<xs:maxInclusive value="99"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="ProcessId">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="1"/>
						<xs:maxLength value="6"/>
						<xs:pattern value="([a-zA-Z0-9])+"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="FrequencyOrder">
				<xs:simpleType>
					<xs:restriction base="xs:positiveInteger">
						<xs:minInclusive value="1"/>
						<xs:maxInclusive value="99"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="NumberOfRecords">
				<xs:simpleType>
					<xs:restriction base="xs:positiveInteger">
						<xs:minInclusive value="1"/>
						<xs:maxInclusive value="9"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="OrderNumber">
				<xs:simpleType>
					<xs:restriction base="xs:positiveInteger">
						<xs:minInclusive value="1"/>
						<xs:maxInclusive value="9"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="headerType">
		<xs:sequence>
			<xs:element name="FileNumber">
				<xs:simpleType>
					<xs:restriction base="xs:positiveInteger">
						<xs:maxInclusive value="99"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="UniqueFileNumber">
				<xs:simpleType>
					<xs:restriction base="xs:positiveInteger">
						<xs:maxInclusive value="999999"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="WritingDate" type="xs:date"/>
			<xs:element name="FileContents">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="80"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="FileContentsCode">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="O"/>
						<xs:enumeration value="N"/>
						<xs:enumeration value="M"/>
						<xs:enumeration value="D"/>
						<xs:enumeration value="A"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="OriginatingCountry" type="countryType"/>
			<xs:element name="DestinationCountry" type="countryType"/>
			<xs:element name="ResponsiblePerson" type="personType"/>
			<xs:element name="NumberOfRecords" type="xs:positiveInteger"/>
			<xs:element name="FileVersion">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="[0-9][.][0-9]"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="recordType">
		<xs:sequence>
			<xs:element name="TransmittingFrequency" type="frequencyType" minOccurs="0"/>
			<xs:element name="FrequencyCategory">
				<xs:simpleType>
					<xs:restriction base="xs:positiveInteger">
						<xs:enumeration value="1"/>
						<xs:enumeration value="2"/>
						<xs:enumeration value="3"/>
						<xs:enumeration value="4"/>
						<xs:enumeration value="5"/>
						<xs:enumeration value="6"/>
						<xs:enumeration value="7"/>
						<xs:enumeration value="8"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="ClassOfStation">
				<xs:simpleType>
					<xs:restriction base="xs:string">
                    <xs:pattern value="[A-Z]{2}"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="NatureOfService">
				<xs:simpleType>
					<xs:restriction base="xs:string">
                       <xs:pattern value="[A-Z]{2}"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="CategoryOfUse">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="[A-Z]{1,2}"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="ChannelOccupation">
				<xs:simpleType>
					<xs:restriction base="xs:nonNegativeInteger">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="DateIntoUse" type="xs:date" minOccurs="0"/>
			<xs:element name="NameOfStation">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="20"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="Country" type="countryType"/>
			<xs:element name="GeographicCoordinates" type="coordinatesType"/>
			<xs:element name="RadiusOfServiceArea">
				<xs:simpleType>
					<xs:restriction base="xs:nonNegativeInteger">
						<xs:maxInclusive value="99999"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="Altitude">
				<xs:simpleType>
					<xs:restriction base="xs:integer">
						<xs:minInclusive value="-999"/>
						<xs:maxInclusive value="9999"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="DesignationOfEmission">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="9"/>
						<xs:pattern value="[0-9]{0,3}(H|K|M|G)[0-9]{0,3}[A-Z][0-9X][A-Z][A-Z]{0,2}"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="MaximalRadiatedPower" minOccurs="0">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:fractionDigits value="1"/>
						<xs:maxInclusive value="9999.9"/>
						<xs:minInclusive value="-999.9"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="ReferenceAntenna">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="E"/>
						<xs:enumeration value="I"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="AzimuthOfMaxRadiation" minOccurs="0">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:fractionDigits value="1"/>
						<xs:minInclusive value="0.0"/>
						<xs:maxInclusive value="359.9"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="MechanicalElevation" minOccurs="0">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:fractionDigits value="1"/>
						<xs:minInclusive value="-90.0"/>
						<xs:maxInclusive value="90.0"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="Polarization">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="H"/>
						<xs:enumeration value="V"/>
						<xs:enumeration value="SR"/>
						<xs:enumeration value="SL"/>
						<xs:enumeration value="CR"/>
						<xs:enumeration value="CL"/>
						<xs:enumeration value="D"/>
						<xs:enumeration value="M"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="Gain" minOccurs="0">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:fractionDigits value="1"/>
						<xs:minInclusive value="0.0"/>
						<xs:maxInclusive value="99.9"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="HeightAboveGround">
				<xs:simpleType>
					<xs:restriction base="xs:nonNegativeInteger">
						<xs:maxInclusive value="9999"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="TypeOfAntenna" type="antennaType"/>
			<xs:element name="ReceiverFrequency" type="frequencyType"/>
			<xs:element name="Remarks" minOccurs="0">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="50"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="StatusOfCoordination">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="A"/>
						<xs:enumeration value="B"/>
						<xs:enumeration value="C"/>
						<xs:enumeration value="D"/>
						<xs:enumeration value="E"/>
						<xs:enumeration value="F"/>
						<xs:enumeration value="G"/>
						<xs:enumeration value="H"/>
						<xs:enumeration value="M"/>
						<xs:enumeration value="P"/>
						<xs:enumeration value="R"/>
						<xs:enumeration value="W"/>
						<xs:enumeration value="Y"/><!-- for backwards compatibility -->
						<xs:enumeration value="Z"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="DateOfRequest" type="xs:date" minOccurs="0"/>
			<xs:element name="DateOfCoordination" type="xs:date" minOccurs="0"/>
			<xs:element name="CoordinationReference" type="referenceType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="M_Test" type="HCMExchangeFileLandMobile"/>
	<xs:complexType name="HCMExchangeFileLandMobile">
		<xs:sequence>
			<xs:element name="Header" type="headerType"/>
			<xs:element name="Record" type="recordType" maxOccurs="unbounded"/>
			<xs:element name="HcmMsSchemaVersion" type="schemaVersion"/>
		</xs:sequence>
	</xs:complexType>
</xs:schema>












































